home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2007 September / PCWSEP07.iso / Software / Linux / Linux Mint 3.0 Light / LinuxMint-3.0-Light.iso / casper / filesystem.squashfs / usr / lib / perl / 5.8.8 / limits.ph < prev    next >
Encoding:
Text File  |  2007-03-05  |  4.2 KB  |  93 lines

  1. require '_h2ph_pre.ph';
  2.  
  3. no warnings 'redefine';
  4.  
  5. unless(defined(&_GCC_LIMITS_H_)) {
  6.     eval 'sub _GCC_LIMITS_H_ () {1;}' unless defined(&_GCC_LIMITS_H_);
  7.     unless(defined(&_LIBC_LIMITS_H_)) {
  8.     require 'syslimits.ph';
  9.     }
  10.     unless(defined(&_LIMITS_H___)) {
  11.     eval 'sub _LIMITS_H___ () {1;}' unless defined(&_LIMITS_H___);
  12.     undef(&CHAR_BIT) if defined(&CHAR_BIT);
  13.     eval 'sub CHAR_BIT () { &__CHAR_BIT__;}' unless defined(&CHAR_BIT);
  14.     unless(defined(&MB_LEN_MAX)) {
  15.         eval 'sub MB_LEN_MAX () {1;}' unless defined(&MB_LEN_MAX);
  16.     }
  17.     undef(&SCHAR_MIN) if defined(&SCHAR_MIN);
  18.     eval 'sub SCHAR_MIN () {(- &SCHAR_MAX - 1);}' unless defined(&SCHAR_MIN);
  19.     undef(&SCHAR_MAX) if defined(&SCHAR_MAX);
  20.     eval 'sub SCHAR_MAX () { &__SCHAR_MAX__;}' unless defined(&SCHAR_MAX);
  21.     undef(&UCHAR_MAX) if defined(&UCHAR_MAX);
  22.     if((defined(&__SCHAR_MAX__) ? &__SCHAR_MAX__ : 0) == (defined(&__INT_MAX__) ? &__INT_MAX__ : 0)) {
  23.         eval 'sub UCHAR_MAX () {( &SCHAR_MAX * 2 + 1);}' unless defined(&UCHAR_MAX);
  24.     } else {
  25.         eval 'sub UCHAR_MAX () {( &SCHAR_MAX * 2+ 1);}' unless defined(&UCHAR_MAX);
  26.     }
  27.     if(defined(&__CHAR_UNSIGNED__)) {
  28.         undef(&CHAR_MIN) if defined(&CHAR_MIN);
  29.         if((defined(&__SCHAR_MAX__) ? &__SCHAR_MAX__ : 0) == (defined(&__INT_MAX__) ? &__INT_MAX__ : 0)) {
  30.         eval 'sub CHAR_MIN () {0;}' unless defined(&CHAR_MIN);
  31.         } else {
  32.         eval 'sub CHAR_MIN () {0;}' unless defined(&CHAR_MIN);
  33.         }
  34.         undef(&CHAR_MAX) if defined(&CHAR_MAX);
  35.         eval 'sub CHAR_MAX () { &UCHAR_MAX;}' unless defined(&CHAR_MAX);
  36.     } else {
  37.         undef(&CHAR_MIN) if defined(&CHAR_MIN);
  38.         eval 'sub CHAR_MIN () { &SCHAR_MIN;}' unless defined(&CHAR_MIN);
  39.         undef(&CHAR_MAX) if defined(&CHAR_MAX);
  40.         eval 'sub CHAR_MAX () { &SCHAR_MAX;}' unless defined(&CHAR_MAX);
  41.     }
  42.     undef(&SHRT_MIN) if defined(&SHRT_MIN);
  43.     eval 'sub SHRT_MIN () {(- &SHRT_MAX - 1);}' unless defined(&SHRT_MIN);
  44.     undef(&SHRT_MAX) if defined(&SHRT_MAX);
  45.     eval 'sub SHRT_MAX () { &__SHRT_MAX__;}' unless defined(&SHRT_MAX);
  46.     undef(&USHRT_MAX) if defined(&USHRT_MAX);
  47.     if((defined(&__SHRT_MAX__) ? &__SHRT_MAX__ : 0) == (defined(&__INT_MAX__) ? &__INT_MAX__ : 0)) {
  48.         eval 'sub USHRT_MAX () {( &SHRT_MAX * 2 + 1);}' unless defined(&USHRT_MAX);
  49.     } else {
  50.         eval 'sub USHRT_MAX () {( &SHRT_MAX * 2+ 1);}' unless defined(&USHRT_MAX);
  51.     }
  52.     undef(&INT_MIN) if defined(&INT_MIN);
  53.     eval 'sub INT_MIN () {(- &INT_MAX - 1);}' unless defined(&INT_MIN);
  54.     undef(&INT_MAX) if defined(&INT_MAX);
  55.     eval 'sub INT_MAX () { &__INT_MAX__;}' unless defined(&INT_MAX);
  56.     undef(&UINT_MAX) if defined(&UINT_MAX);
  57.     eval 'sub UINT_MAX () {( &INT_MAX * 2 + 1);}' unless defined(&UINT_MAX);
  58.     undef(&LONG_MIN) if defined(&LONG_MIN);
  59.     eval 'sub LONG_MIN () {(- &LONG_MAX - 1);}' unless defined(&LONG_MIN);
  60.     undef(&LONG_MAX) if defined(&LONG_MAX);
  61.     eval 'sub LONG_MAX () { &__LONG_MAX__;}' unless defined(&LONG_MAX);
  62.     undef(&ULONG_MAX) if defined(&ULONG_MAX);
  63.     eval 'sub ULONG_MAX () {( &LONG_MAX * 2 + 1);}' unless defined(&ULONG_MAX);
  64.     if(defined ( &__STDC_VERSION__)  && (defined(&__STDC_VERSION__) ? &__STDC_VERSION__ : 0) >= 199901) {
  65.         undef(&LLONG_MIN) if defined(&LLONG_MIN);
  66.         eval 'sub LLONG_MIN () {(- &LLONG_MAX - 1);}' unless defined(&LLONG_MIN);
  67.         undef(&LLONG_MAX) if defined(&LLONG_MAX);
  68.         eval 'sub LLONG_MAX () { &__LONG_LONG_MAX__;}' unless defined(&LLONG_MAX);
  69.         undef(&ULLONG_MAX) if defined(&ULLONG_MAX);
  70.         eval 'sub ULLONG_MAX () {( &LLONG_MAX * 2 + 1);}' unless defined(&ULLONG_MAX);
  71.     }
  72.     if(defined ( &__GNU_LIBRARY__) ? defined ( &__USE_GNU) : !defined ( &__STRICT_ANSI__)) {
  73.         undef(&LONG_LONG_MIN) if defined(&LONG_LONG_MIN);
  74.         eval 'sub LONG_LONG_MIN () {(- &LONG_LONG_MAX - 1);}' unless defined(&LONG_LONG_MIN);
  75.         undef(&LONG_LONG_MAX) if defined(&LONG_LONG_MAX);
  76.         eval 'sub LONG_LONG_MAX () { &__LONG_LONG_MAX__;}' unless defined(&LONG_LONG_MAX);
  77.         undef(&ULONG_LONG_MAX) if defined(&ULONG_LONG_MAX);
  78.         eval 'sub ULONG_LONG_MAX () {( &LONG_LONG_MAX * 2 + 1);}' unless defined(&ULONG_LONG_MAX);
  79.     }
  80.     }
  81. } else {
  82.     if(defined(&_GCC_NEXT_LIMITS_H)) {
  83.     eval {
  84.         my(@REM);
  85.         my(%INCD) = map { $INC{$_} => 1 } (grep { $_ eq "limits.ph" } keys(%INC));
  86.         @REM = map { "$_/limits.ph" } (grep { not exists($INCD{"$_/limits.ph"}) and -f "$_/limits.ph" } @INC);
  87.         require "$REM[0]" if @REM;
  88.     };
  89.     warn($@) if $@;
  90.     }
  91. }
  92. 1;
  93.